package gbench.appdemo.priceline.indicator;

import gbench.common.tree.LittleTree.IRecord;

/**
 * 价格指标计算器,这是一个函数式接口
 */
public interface IIndicatorEvaluator<T>{
    /**
     * 对evaParam在索引 index 处进行求值 
     * @param rec 价格数据
     * @param previous 上次的计算结果
     * @return IPriceIndicator 类型的对象，求值结果
     */
    public IRecord evaluate(final IRecord rec, final IRecord previous);
    
    /**
     * 把 ohlcvrec转换成目标结果。
     * @param ohlcvrec
     * @return T 目标结果
     */
    public T getIndicator(final IRecord ohlcvrec);
}